package com.ruoyi.system.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.domain.ActivityManagement;
import com.ruoyi.system.domain.MeetingManagement;
import com.ruoyi.system.domain.vo.UserEducationVo;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 活动管理Service接口
 *
 * @author ruoyi
 * @date 2024-04-02
 */
public interface IActivityManagementService
{
    /**
     * 查询活动管理
     *
     * @param id 活动管理主键
     * @return 活动管理
     */
    public ActivityManagement selectActivityManagementById(Long id);

    /**
     * 查询活动管理列表
     *
     * @param activityManagement 活动管理
     * @return 活动管理集合
     */
    public List<ActivityManagement> selectActivityManagementList(ActivityManagement activityManagement);

    /**
     * 新增活动管理
     *
     * @param activityManagement 活动管理
     * @return 结果
     */
    public AjaxResult insertActivityManagement(ActivityManagement activityManagement);

    /**
     * 修改活动管理
     *
     * @param activityManagement 活动管理
     * @return 结果
     */
    public int updateActivityManagement(ActivityManagement activityManagement);


    /**
     * 删除活动管理信息
     *
     * @param id 活动管理主键
     * @return 结果
     */
    public int deleteActivityManagementById(Long id);


    /**
     * 查询活动活动签到统计列表
     *
     * @param activityManagement 活动管理
     * @return 活动管理集合
     */
    public List<ActivityManagement> selectActivitySignaturelist(ActivityManagement activityManagement);


    /**
     * 查询参加的活动列表
     *
     * @param activityManagement 活动管理
     * @return 活动管理集合
     */
    public List<ActivityManagement> selectJoinActivityManagementList(ActivityManagement activityManagement);

    /**
     * 查询已参加的活动列表
     *
     * @param activityManagement 活动管理
     * @return 活动管理集合
     */
    public List<ActivityManagement> selectjoinedlist(ActivityManagement activityManagement);


    /**
     * 导出会议通知
     */
    public AjaxResult exportActivityNotify(ActivityManagement activityManagement, HttpServletResponse response);


    /**
     * 导出会议签到
     */
    public AjaxResult exportActivitySignature(ActivityManagement activityManagement, HttpServletResponse response);



    /**
     * 党建大数据 活动分布
     */
    public List<UserEducationVo>  activityStructure(String queryYear);
}
